In recent years, performance diagnoses related to response delays or the like with respect to multi-tier systems are performed. For example, a multi-tier system is made up of multiple tiers, such as a Web server tier (WEB tier), an application server tier (AP tier), a database server tier (DB tier), or the like. In the multi-tier system, a process is executed in each of the tiers and then a subsequent tier is called, thereby the process is continued. However, even if there is a delay in a response from a processing type in an upper tier, which calls a processing type in a certain lower tier, due to a delay in a response from the processing type in that lower tier because the call relationship among the tiers is uncertain, there may be a case in which this delay is erroneously determined that the response delay is due to a delay in the upper tier.
FIG. 38 is a schematic diagram illustrating an example of transmission of a response delay among tiers. In each of the graphs illustrated in FIG. 38, the vertical axis is the axis associated with the response time and the horizontal axis is the axis associated with the time. Graphs 10a and 10b are graphs that indicate the relationship between the time and the response time of processing types W1 and W2, respectively, running on a Web tier 10. For example, for the processing type W1, a response delay occurs at a time point 11. For the processing type W2, response delays occur at time points 12a and 12b. 
Graphs 20a and 20b are graphs that indicate the relationship between the time and the response time of processing types A1 and A2 running on an AP tier 20. For example, for the processing type A1, a response delay occurs at a time point 21. For the processing type A2, a response delay occurs at a time point 22.
Graphs 30a and 30b are graphs that indicate the relationship between the time and the response time of processing types D1 and D2 running on a DB tier 30. For example, for the processing type D1, a response delay occurs at a time point 31.
For example, if a response delay occurs in a certain processing type in the DB tier 30, the response time of the processing type in the upper tier that calls the delayed processing type is increased; therefore, the problem seems to occur in the processing type in the upper tier. For example, in the example illustrated in FIG. 38, if the response delay 31 of the processing type D1 is propagated and thus the response delays occur at the time points 11, 12a, 12b, 21, and 22, the problem seems to occur in the processing types A1 and A2 and the processing types W1 the W2.
If the call relationship between the processing types between the tiers is specified, it is possible to determine whether the response delay is due to the call relationship or due to coincidence and thus it is possible to specify the processing type in which the response delay occurs. Here, there are conventional technologies 1 and 2 that determine the call relationship between processing types.
With the conventional technology 1, regarding two processing types belonging to different tiers, a correlation analysis is performed on two pieces of time series data related to the number of executions. With the conventional technology 1, after the correlation analysis is performed, if it is determined that both “have significant correlation”, it is determined that there is the call relationship between these processing types.
FIG. 39 is a schematic diagram illustrating a conventional technology 1. In the example illustrated in FIG. 39, the processing types running on the AP tier 20 are represented by processing types X, Y, and Z. The processing types running on the DB tier 30 are represented by processing types A, B, and C. Pieces of time series data of the processing types X, Y, and Z are represented by time series data 20X, 20Y, and 20Z, respectively. The time series data of the processing type A is represented by time series data 30A. Each piece of the time series data is data that indicates the number of pieces of data executed at each time in the processing types.
With the conventional technology 1, the correlation coefficient of the time series data 30A and the time series data 20X is calculated and, if the calculated correlation coefficient indicates that both have significant correlation, it is determined that the processing type A and the processing type X have the call relationship. With the conventional technology 1, the correlation coefficient of the time series data 30A and the time series data 20Y is calculated and, if the calculated correlation coefficient indicates that both have significant correlation, it is determined that the processing type A and the processing type Y have the call relationship. With the conventional technology 1, the correlation coefficient of the time series data 30A and the time series data 20Z is calculates and, if the calculated correlation coefficient indicates that both have significant correlation, it is determined that the processing type A and the processing type Z have the call relationship.
With the conventional technology 2, correlation coefficients of time series data between a certain processing type in a lower tier and all processing types in an upper tier that can be call candidates for the subject processing types in the lower tier are calculated in a round robin fashion. With the conventional technology 2, on the basis of the value of the subject correlation coefficient, the processing types in the upper tier are divided into a group with a high correlation coefficient and a group with a low correlation coefficient by clustering and then the processing types in the group with the high correlation coefficient are determined as call source processing types.
FIGS. 40 and 41 are schematic diagrams each illustrating a conventional technology 2. In the example illustrated in FIG. 40, the processing types running on the AP tier 20 are represented by processing types X, Y, and Z. Furthermore, other processing types running on the AP tier 20 are not illustrated. The processing type running on the DB tier 30 is represented by the processing type 30A. With the conventional technology 2, correlation coefficients of the time series data between the processing type A and all of the processing types in the AP tier 20 are calculated in a round robin fashion.
With the conventional technology 2, on the basis of the calculation result of the correlation coefficients, clustering is performed on the processing types. FIG. 41 is the graph that indicates the distribution of correlation coefficients; the vertical axis is the axis associated with the number of processing types and the horizontal axis is the axis associated with the correlation coefficients. The conventional technology 2 classifies, in accordance with the magnitude of the correlation coefficients, the results into groups 1A and 1B and determines that the processing types associated with the correlation coefficient in the group 1B is the processing type that has the call relationship with the processing type A. These related-art examples are described, for example, in Japanese Laid-open Patent Publication No. 2002-7659 and Japanese Laid-open Patent Publication No. 2007-304647.
However, with the conventional technologies described above, because the effect due to requests from all of the tiers is not considered, there is a problem in that it is not accurately determine whether there is the call relationship between processing types.
FIG. 42 is a schematic diagram illustrating an example of an effect due to requests from the entire tiers. In FIG. 42, time series data 40a indicates the relationship between the time and the number of executions in the entire multi-tier system. For the processing type that is frequently called, the number of executions thereof is proportional to the number of executions performed in the entire multi-tier system. For example, if it is assumed that a processing type Y and a processing type A are frequently called processing types, time series data 40b on the processing type Y and the time series data 40c on the processing type A are similar to the time series data 40a. Consequently, even if the processing type A is not called by the processing type Y, the correlation coefficient of the processing type A and the processing type Y becomes high and thus it is erroneously determined that the processing type A is called by the processing type Y.